package Prefix_and;

import java.util.Arrays;
import java.util.Scanner;

/**
 * Created with Intellij IDEA.
 * Description;
 * User:TQ02
 * Data:2024-03-02
 * Time:17:39
 * Text：石头的搬运工
 */
public class Text9 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int size=sc.nextInt();   //石头的堆数
        int[][] arr=new int[size][2];
        for(int i=0;i<size;i++){
            arr[i][0]=sc.nextInt();  //石头的个数
            arr[i][1]=sc.nextInt();  //石头的位置
        }
        /*
        * 将二维数组的每一行的第二个元素进行排序
        * */
        Arrays.sort(arr,(a1,a2)->a1[1]-a2[1]);

        //从第一格开始，每一格存储的是前面所有石头移动到当前位置的费用
        long[] dp=new long[size];
        long sum=0;
        for(int i=0;i<size-1;i++){
            //sum记录的是当前位置和前面的所有石头数目
            sum+=arr[i][0];
            //dp[i+1]记录前格花费的费用+将当前石头数目移动到下一格的花费。
            dp[i+1]=dp[i]+sum*(arr[i+1][1]-arr[i][1]);
        }

        //再一次存储的是相反的费用，后面的石头移动到当前位置费用
        long[] dp2=new long[size];
        sum=0;
        for(int i=size-1;i>0;i--){
            sum+=arr[i][0];
            dp2[i-1]=dp2[i]+sum*(arr[i][1]-arr[i-1][1]);
        }

        long tmp=Long.MAX_VALUE;
        for(int i=0;i<size;i++){
            tmp=Math.min(tmp,dp[i]+dp2[i]);
        }
        System.out.println(tmp);
    }
}














